package com.hrz.datasync.service;

import com.hrz.datasync.pojo.primary.JobAndTriggerDto;
import com.hrz.datasync.utils.PageUtil;

import java.util.List;
import java.util.Map;
/**
 * @作  者: 侯建军
 * @日  期: 2018/11/06 22:04:57
 * @描  述: 
 */
public interface JobAndTriggerService {
    /**
     * @Title: getPageJob
     * @Description: TODO(查询定时任务，分页)
     * @param @param search
     * @param @return    参数
     * @return Map<String,Object>    返回类型
     * @throws
     */
    List<Map<String, Object>> getPageJob(int curPage, int pageSize);

    /**
     * @Title: getPageJobmod
     * @Description: TODO(查询定时任务)
     * @param @return    参数
     * @return JobAndTriggerDto    返回类型
     * @throws
     */
    Map<String, Object> getPageJobmod(String name);

    /**
     * @Title: addJob
     * @Description: TODO(添加任务)
     * @param @param jobClassName 任务路径名称
     * @param @param jobGroupName 任务分组
     * @param @param cronExpression cron时间规则
     * @param @throws Exception    参数
     * @return void    返回类型
     * @throws
     */
    void addJob(String jobClassName, String jobGroupName, String cronExpression) throws Exception;

    /**
     * @Title: updateJob
     * @Description: TODO(更新定时任务)
     * @param @param jobClassName 任务路径名称
     * @param @param jobGroupName 任务分组
     * @param @param cronExpression cron时间规则
     * @param @throws Exception    参数
     * @return void    返回类型
     * @throws
     */
    void updateJob(String jobClassName, String jobGroupName, String cronExpression) throws Exception;

    /**
     * @Title: deleteJob
     * @Description: TODO(删除定时任务)
     * @param @param jobClassName 任务路径名称
     * @param @param jobGroupName 任务分组
     * @param @throws Exception    参数
     * @return void    返回类型
     * @throws
     */
    void deleteJob(String jobClassName, String jobGroupName) throws Exception;

    /**
     * @Title: pauseJob
     * @Description: TODO(暂停定时任务)
     * @param @param jobClassName 任务路径名称
     * @param @param jobGroupName 任务分组
     * @param @throws Exception    参数
     * @return void    返回类型
     * @throws
     */
    void pauseJob(String jobClassName, String jobGroupName) throws Exception;

    /**
     * @Title: resumejob
     * @Description: TODO(恢复任务)
     * @param @param jobClassName 任务路径名称
     * @param @param jobGroupName 任务分组
     * @param @throws Exception    参数
     * @return void    返回类型
     * @throws
     */
    void resumejob(String jobClassName, String jobGroupName) throws Exception;
}

